Geometry Template Library for STL-like 2D Operations

نویسندگان

  • Lucanus Simonson
  • Gyuszi Suto
چکیده

There is a proliferation of geometric algorithms and data types with no existing mechanism to unify geometric programming in C++. The geometry template library (GTL) provides geometry concepts and concept mapping through traits as well as algorithms parameterized by conceptual geometric data type to provide a unified library of fundamental geometric algorithms that is interoperable with existing geometric data types without the need for data copy conversion. Specific concepts and algorithms provided in GTL focus on high performance/capacity 2D polygon manipulation, especially polygon clipping. The applicationprogramming interface (API) for invoking algorithms is based on overloading of generic free functions by concepts. Overloaded generic operator syntax for polygon clipping Booleans (see Figure 1) and the supporting operator templates are provided to make the API highly productive and abstract away the details of algorithms from their usage. The library was implemented in Intel Corporation to converge the programming of geometric manipulations in C++ while providing best in class runtime and memory performance for Booleans operations. This paper discusses the specific needs of generic geometry programming and how those needs are met by the concepts-based type system that makes the generic API possible.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

STXXL: standard template library for XXL data sets

We present the software library STXXL that is an implementation of the C++ standard template library STL for processing huge data sets that can fit only on hard disks. It supports parallel disks, overlapping between disk I/O and computation and it is the first I/O-efficient algorithm library that supports the pipelining technique that can save more than half of the I/Os. STXXL has been applied ...

متن کامل

Dense and Sparse Matrix Classes Using the C++ Standard Template Library

The C++ programming language has undergone signiicant changes since its inception in the 1980's, but has now reached a relatively steady state. Standard C++ now includes a general library of container classes, the Standard Template Library (STL). These developments are rapidly changing the styles used in C++ class programming. The paper has dual purposes: It provides an introduction to STL for ...

متن کامل

Experiences with the C++ Standard Template Library and MPI for a Parallel Particle Simulation Method

In this paper we discuss design and implementation of a parallel particle simulation method from the realm of material sciences (laser ablation). To achieve a high degree of portability and eeciency we combine C++ and the MPI message passing library. Following a current trend in C++ towards template-based class libraries we use the Standard Template Library (STL). One of our results is that the...

متن کامل

Parallel Matching and Sorting with TACO's Distributed Collections - A Case Study from Molecular Biology Research

TACO is a template library that implements higher-order parallel operations on distributed object sets by means of reusable topology classes and C++ function templates. In this paper we discuss an experimental application that exploits TACO’s distributed object groups and collective operations for computing the similarity between groups of molecular sequences, a computationally intensive core p...

متن کامل

Making the Usage of STL Safe

The use of the C++ Standard Template Library has many advantages, but comes with a unique set of problems that have not been addressed by compilers or development tools. Many of these problems are due to misuses of the STL components and algorithms that are syntactically correct but semantically flawed. We motivate the case for the use of static analysis to diagnose such problems and describe o...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2009